home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / sbin / idectl < prev    next >
Text File  |  2006-05-08  |  807b  |  46 lines

  1. #!/bin/sh
  2.  
  3. HDPARM=/sbin/hdparm
  4. MAX_IDE_NR=1
  5.  
  6. IDE_IO_0=0x1f0
  7. IDE_IO_1=0x170
  8.  
  9. USE_IDE_DEV_0=/dev/hda
  10. USE_IDE_DEV_1=/dev/hdc
  11.  
  12. usage () {
  13.     if [ $# -gt 0 ]; then
  14.         echo $* >&2
  15.         echo
  16.     fi
  17.  
  18.     echo "usage: $0 ide-channel-nr [off|on|rescan]" 2>&1
  19.     exit 1
  20. }
  21.  
  22. IDE_NR=$1
  23. MODE=$2
  24.  
  25. do_register=0
  26. do_unregister=0
  27.  
  28.  
  29. if [ ! "$IDE_NR" ] || [ $IDE_NR -lt 0 ] || [ $IDE_NR -gt $MAX_IDE_NR ]; then
  30.     usage "Unrecognized IDE-channel number"
  31. fi
  32.  
  33. case "$MODE" in
  34. on )        do_register=1 ;;
  35. off )        do_unregister=1 ;;
  36. rescan )    do_unregister=1; do_register=1 ;;
  37. * )            usage "Unrecognized command" ;;
  38. esac
  39.  
  40. eval "IDE_IO=\$IDE_IO_$IDE_NR"
  41. eval "USE_IDE_DEV=\$USE_IDE_DEV_$IDE_NR"
  42.  
  43. [ $do_unregister -eq 1 ] && eval "$HDPARM -U $IDE_NR $USE_IDE_DEV > /dev/null"
  44. [ $do_register -eq 1 ] && eval "$HDPARM -R $IDE_IO 0 0 $USE_IDE_DEV > /dev/null"
  45.  
  46.